'''
基数排序是桶排序的深层应用
多关键字排序:假如现在有一个员工表,要求按照薪资排序,薪资相同的员工按照年龄排序
    先按照年龄进行排序,再按照薪资进行稳定的排序
对 32,13,94,52,17,54,93排序,是否可以看做多关键字排序
'''
def radix_sort(li):
    max_num = max(li)  # 最大值,99 2次 ,888 3次,10000 5次
    it = 0
    while 10**it <= max_num:
        buckets = [[] for _ in range(10)]
        for var in li:
            digit = (var // 10**it) % 10
            buckets[digit].append(var)
            # 分桶完成
        li.clear()
        for bucket in buckets:
            li.extend(bucket)
        it += 1


li = [0,2,5,7,23,25,21,22,28,24,38,34,99,100,110,190,182,134]
radix_sort(li)
print(li)




